package com.bidevalution.dao.mapper;

import com.bidevalution.dao.entity.BeReplyEnroll;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 答辩单位信息数据访问层接口
 */
@Mapper
public interface BeReplyEnrollMapper {

    /**
     * 获取列表记录总数
     * @param replyId
     * @return
     */
    long getCount(String replyId);

    /**
     * 根据答辩题目id删除答辩单位
     *
     * @param replyId
     * @return
     */
    int deleteByReplyId(String replyId);

    /**
     * 保存答辩单位信息
     *
     * @param record
     * @return
     */
    int insertBeReplyEnroll(BeReplyEnroll record);

    /**
     * 根据答辩题目id查询出答辩单位列表
     *
     * @param replyId
     * @return
     */
    List<BeReplyEnroll> selectReplyEnrollList(@Param("replyId") String replyId, @Param("limitNum") Integer limitNum,
    	                             @Param("page") Integer page);
    List<BeReplyEnroll> selectListByOrgCode(@Param("orgCode")String orgCode,@Param("sectionId")String sectionId);
    int insertSelective(BeReplyEnroll record);

    BeReplyEnroll selectByPrimaryKey(String seqId);
    BeReplyEnroll selectByStreamId(String streamId);
    int updateByPrimaryKeySelective(BeReplyEnroll record);

    /**
     * 更新身份认证状态
     *
     * @param creditCodes
     * @param replyId
     * @return
     */
    int updateIdentityState(@Param("creditCodes") String creditCodes, @Param("replyId") String replyId);

    List<BeReplyEnroll> getIdentityEnrollList(@Param("replyId") String replyId);

    /**
     * 获取最大序列号
     * @return
     */
    String getMaxReplayOrder();
    
    long selectCountByReplyId(@Param("replyId") String replyId);

    /**
     * 查询某个题目某个状态的投标单位家数
     * @param replyId
     * @param isPublish 是否答辩完成：Y 是、N 否
     * @return
     */
    int getCountByIsPublish(@Param("replyId")String replyId,@Param("isPublish")String isPublish);
}